#pragma once
#include <stdio.h>
#include <stdlib.h>
#include <cassert>

typedef int StackDataType;

typedef struct Stack {
	StackDataType* _array;
	int _top;  // 栈顶下标
	int _capacity; // 容量
}Stack;

void StackInit(Stack* pstack);
void StackDestory(Stack* pstack);
void StackPrint(Stack* pstack);
void StackPush(Stack* pstack, StackDataType value);
void StackPop(Stack* pstack);
int StackSize(Stack* pstack);
bool StackEmpty(Stack* pstack);
StackDataType StackTop(Stack* pstack);